It is assumed that the data is contained in this folder with subfolder names and also it is assumed only the image files exist in those sub folders

DIV2K_train_HR
DIV2K_train_LR_bicubic_X3
DIV2K_valid_LR_bicubic_X3

Train.py starts training the proposed model from the scratch and at the end of every epoch it writes the best_model.h5 checkpoint file to Model directory if the validation PSNR is higher than the previous epochs. If a better checkpoint is reached it will be saved to best_model.h5 (overwritten)

main.py uses the current best_model.h5 in the same directory and saves model.tflite to TFlite folder
if model_none.tflite and model_none_float.tflite files are required generation_type variable should be change accordingly in the code generation_type=0 means model.tflie generation_type=1 means model_none.tflite and generation_type=2 means model_none_float.tflite



The code is tested in Ubuntu 20.04

to run
activate the virtual environment (if any)
in the Model Folder
python main.py //this generate model.tflite (overwrites) #change main.py generation_type accordingly to your needs to generate the other tflite's as well

to train
activate the virtual environment (if any)
in the Model Folder
python Train.py //this starts training and generates the best checkpoint file in Model folder

